package com.ruoyi.buy.service;

import com.ruoyi.buy.domain.entity.PO.InvStockBill;
import com.ruoyi.buy.domain.entity.inv0005.Inv0005InvDataDto;
import com.ruoyi.buy.domain.entity.inv0006.Inv0006InvDataDto;
import com.ruoyi.buy.domain.entity.inv0006.Inv0006UpdateByIdVO;

import java.util.List;

/**
 * 盘点单信息Service接口
 * 
 * @author ruoyi
 * @date 2024-01-02
 */
public interface IInvStockBillService 
{
    /**
     * 查询盘点单信息
     * 
     * @param id 盘点单信息主键
     * @return 盘点单信息
     */
    public InvStockBill selectInvStockBillById(Long id);

    /**
     * 查询盘点单信息列表
     * 
     * @param invStockBill 盘点单信息
     * @return 盘点单信息集合
     */
    public List<InvStockBill> selectInvStockBillList(InvStockBill invStockBill);

    /**
     * 新增盘点单信息
     * 
     * @param invStockBill 盘点单信息
     * @return 结果
     */
    public int insertInvStockBill(Inv0006UpdateByIdVO para);

    /**
     * 修改盘点单信息
     * 
     * @param invStockBill 盘点单信息
     * @return 结果
     */
    public int updateInvStockBill(Inv0006UpdateByIdVO para);

    /**
     * 批量删除盘点单信息
     * 
     * @param ids 需要删除的盘点单信息主键集合
     * @return 结果
     */
    public int deleteInvStockBillByIds(Long[] ids);

    /**
     * 删除盘点单信息信息
     * 
     * @param id 盘点单信息主键
     * @return 结果
     */
    public int deleteInvStockBillById(Long id);

    public List<Inv0006InvDataDto> getInvDataList(InvStockBill para);

    public Inv0006UpdateByIdVO viewById(InvStockBill para);

    public int updateBillStatus(InvStockBill para);
}
